package com.cn.wanxi.common;

public class ReadMe {
    /**
     * 2022-1-23 spring
     * springmvc   mybatis   maven   反射  注解  怎么通过servlet 来变成spring的？原理
     * 1.定义  是什么？
     * 2.有什么优点？ 为什么要用？
     * 3.应用场景   在哪些地方需要用？
     * 4.怎么用？
     * servlet    spring
     * dao          mapper   数据层
     * service      service  服务层
     * servlet      controller  控制层
     * model        entity  实体层
     * util         common  工具层
     * --------------------------------------------------------------
     * spring框架搭建
     * 1.创建maven项目
     * 2.在pom文件里面引入相关的jar包
     * 3.创建webapp的包
     * 4.将第四阶段的前端复制到webapp里面
     * 5.创建java里面和servlet对应的包
     * ----------------------------------
     * 6.如果需要访问后台，需要配置资源文件application.xml
     * 7.需要在web.xml里面配置servlet核心控制器
     * --------------------------------------------------
     * 注意：
     *  1.前端传递给后台的数据必须是json格式
     *  2.前端的json格式里面的key值，必须和后台的entity里面的对象字段名相同
     * service 层
     *  和以前一样
     *  只不过需要调用mapper层
     *  在类上面加注解@Service
     * mapper层
     *      该层属于mybatis 所以需要加入mybatis包
     *      现在我们把sql语句写在注解上面
     * 注意：需要创建mybatis的配置xml
     * 修改web.xml文件
     * ------------------------------------------------------
     * 1.controller   调用service
     * 2.service      调用mapper  写逻辑和servlet一样
     * 3.mapper       接口层，将sql语句单独提起出来  取消servlet的实现层
     * ---------需要注意的：--------------
     * 需要创建spring-config和spring-mybatis文件 进行配置
     * 需要web.xml进行配置
     * ----------------------------------------------------------------
     * 注解意思：
     * @RestController 必须要  controller  表示可以进行配置been对象，表示返回的是json对象
     * @Autowired 表示不用自动写new关键字创建对象  自动注入
     * @PostMapping("/add") 对于以前的doPost  后面跟路径
     * @RequestMapping("/back/user") 路径映射  和后面方法上的路径进行拼接
     * @Service 表示是service层
     * @Mapper 表示是mapper层
     * service层只能调用mapper层
     * service层可以调用其他service层
     * @Autowired
     *     private NewsService newsService;
     *
     *
     *
     *
     */
    /**
     * 2022-1-23
     * 思路：
     * 1.pom里面引入jar包
     * 2.工作空间的正确配置
     * 3.资源文件的写入
     * 4.web.xml里面的配置
     * ---------------------------
     * 修改第四阶段的内容
     * 1.复制web前端的代码
     * 2.将servlet层修改为controller层，以前我们将所有的包里面的方法，放在controller里面
     * 3.将service里面的代码写入到service里面
     * 4.将dao层写入mapper层，将sql代码写入注解
     * ------------------------------------------
     * 当我们去了解了mybatis和jdbc的优缺点后，我们推荐大家不要把sql语句 写入注解
     * 推荐大家将所有的sql语句写入配置文件即xml文件
     * ------------------------------------------
     * 1.将sql语句打印到控制台
     *      1)引入log4j的maven依赖
     *      2）创建log4j.properties 在网上搜索复制
     * 2.将错误信息得到并返回给前端
     *      在前后端分离时，我们经常会得到一个错误的信息，比如500，但不详细
     *      我们会在后台的不同包里面发现都有可能出现抛异常的情况，
     *      以前我们的规则：在哪里抛异常，在哪里捕获，
     *      现在我们用另一种方式：AOP 面向切面
     *      1.创建自己的异常处理器
     *      2.在处理器里面将异常信息得到并返回给前端
     *
     * -------------------------------
     * 直接拼接sql语句和用占位符？的区别？
     * 1.如果直接用拼接，那么可能会产生sql注入的问题
     * 2.如果用占位符，则？表示参数，其他会经过编译
     * --------------------------------------
     * 任务：将第四阶段所有的代码修改为springmvc
     * 重点：sql语句（xml）
     */
}
